package com.gkzf.ai.module.crm.controller.app.product.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fhs.core.trans.vo.VO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

@Schema(description = "管理后台 - CRM 产品 Response VO")
@Data
@ExcelIgnoreUnannotated
public class ProductDetailsRespVO implements VO {

    @Schema(description = "产品编号", example = "20529")
    @ExcelProperty("产品编号")
    private Long id;

    @Schema(description = "产品名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "好产品")
    @ExcelProperty("产品名称")
    private String name;

    @Schema(description = "产品编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "12306")
    @ExcelProperty("产品编码")
    private String no;

    @Schema(description = "贷款期限", requiredMode = Schema.RequiredMode.REQUIRED,example = "2")
    private Integer loansDeadline;

    @Schema(description = "最大限额", requiredMode = Schema.RequiredMode.REQUIRED, example = "8911")
    @ExcelProperty("最大限额")
    private BigDecimal maxQuota;

    @Schema(description = "利率(%)", example = "2.34")
    @ExcelProperty( "利率(%)")
    private String interestRate;

    @Schema(description = "办理周期", example = "0")
    @ExcelProperty( "办理周期")
    private Integer processingCycle;

    @Schema(description = "贷款类型", example = "信用贷")
    @ExcelProperty( "贷款类型")
    private String loanType;

    @Schema(description = "产品准备材料", example = "0,1")
    @ExcelProperty( "产品准备材料")
    private String preparedMaterials;

    @Schema(description = "产品描述备注", example = "你说的对")
    @ExcelProperty("产品描述备注")
    private String description;

    @Schema(description = "合作机构 字典配置")
    private Integer cooperationInstitution;

    @Schema(description = "产品介绍")
    private String descriptions;

    @Schema(description = "产品标签")
    private String label;

    @Schema(description = "申请流程")
    private String applicationProcess;

    @Schema(description = "产品本人要求")
    public List<String> personalRequirements;

    @Schema(description = "产品征信要求")
    public List<String> creditReportRequirements;
}
